function stringToBase64(str) {
    //? btoa() 函数只能处理ASCII字符，如果字符串中包含非ASCII字符，将会抛出异常
    let base64 = btoa(str); // 利用 btoa 方法进行 Base64 编码
    return base64;
}
// 测试代码
let str = 'Hello World!';
let base64 = stringToBase64(str);
console.log(base64); // SGVsbG8gV29ybGQh

/*
这里我们使用了 JavaScript 提供的 btoa 方法，将字符串进行 Base64 编码。btoa 方法可以将字符串转换成 Base64 编码后的字符串，而 atob 方法可以将 Base64 编码的字符串转换成原始字符串。需要注意的是，btoa 方法只能处理 ASCII 字符串。如果要处理非 ASCII 字符串，需要将其转换成 UTF-8 编码的字节数组，再进行 Base64 编码。
另外，需要说明的是，在浏览器环境中，btoa 和 atob 方法是全局方法，可以直接调用。但在 Node.js自测 环境中，btoa 和 atob 方法是不存在的，需要使用 Buffer 类来进行 Base64 编码。例如：
 */

/* Node.js自测 环境中的实现
function stringToBase64ForNodeJS(str) {
    let buff = Buffer.from(str, 'utf-8');
    let base64 = buff.toString('base64');
    return base64;
}
let str = 'Hello World!';
let base64 = stringToBase64(str);
console.log(base64); // SGVsbG8gV29ybGQh
 */
